package com.qding.park.common.core.aspect.context;

import org.springframework.expression.EvaluationContext;

import com.qding.park.common.core.annotation.STORAGE_LOCATION_ENUM;

/**
 * @ClassName AbstractContext
 * @Description TODO(环境抽象)
 * @author Administrator
 * @Date 2016年10月16日 下午12:05:44
 * @version 1.0.0
 */
public abstract  class AbstractContext {
	
	
	/**
	 * @Field @key : TODO(缓存中的 key)
	 */
	private String key;
	
	/**
	 * @Field @cache_value : TODO(缓存中的值)
	 */
	private Object cache_value;
	
	/**
	 * @Field @expire : TODO(过期时间)
	 */
	private int expire;
	
	/**
	 * @Field @returnType : TODO(业务方法的返回类型)
	 */
	private Class<?> returnType;
	
	/**
	 * @Field @evaluationContext : TODO(el 表达式)
	 */
	private  EvaluationContext  evaluationContext;
	
	/**
	 * @Field @location : TODO(存储类型)
	 */
	private STORAGE_LOCATION_ENUM  location;

	public String getKey() {
		return key;
	}

	public void setKey(String key) {
		this.key = key;
	}

	public Object getCache_value() {
		return cache_value;
	}

	public void setCache_value(Object cache_value) {
		this.cache_value = cache_value;
	}

	public int getExpire() {
		return expire;
	}

	public void setExpire(int expire) {
		this.expire = expire;
	}

	public Class<?> getReturnType() {
		return returnType;
	}

	public void setReturnType(Class<?> returnType) {
		this.returnType = returnType;
	}

	public EvaluationContext getEvaluationContext() {
		return evaluationContext;
	}

	public void setEvaluationContext(EvaluationContext evaluationContext) {
		this.evaluationContext = evaluationContext;
	}

	public STORAGE_LOCATION_ENUM getLocation() {
		return location;
	}

	public void setLocation(STORAGE_LOCATION_ENUM location) {
		this.location = location;
	}
	
}
